Axis Pipe Block

The Axis pipe block is the link between the logical and physical worlds, managing positionClosed Position means a point in space which is described by different coordinates. Depending on the used system and transformation it can consist of a maximum of six dimensions (coordinates).This means three Cartesian coordinates in space and coordinates for the orientation. In ACS there can be even more than six coordinates. If the same position is described in different coordinate systems the values of the coordinates are different. data for a physical or simulated axis.

Figure 1: Axis Pipe Block Positions

Associated Data on Positions

This data are illustrated here:


  • All positions are in user units with modulo applied if active, unless specified.

Position / Offset Description

Actual Position

This is the actual position of the underlying axis as reported by the driveClosed In electrical engineering, a drive is an electronic device to provide power to a motor or servo. Control device for regulating the speed, torque and position of a motor. A unit controlling a motor using the current and timing in its coils..

ActualPos := FeedbackPos + ZeroOffset

Feedback Position

This is the current position the drive reports for an axis, scaled to user units.

It does not take into account the value of the Zero Offset or axis modulo.

Generator Position

This is the summation of all previous commands (i.e., calls to functions which perform motion) to the Axis internal motion generator.

See either such as MLAxisAbs, MLAxisMoveVel, or MLAxisRel.

  • It is modified by MLAxisWritePos to insure no jumps in the Reference Position command.
  • It accumulates changes in pipe position due to activate and deactivation of the pipe the Axis block is associated with.

Pipe Position

This is the output of the convertor block is written into the Pipe Position value whenever the Convertor block is connected to the axis and the pipe is active.

See Convertor.

Reference Position

This is the commanded axis position sent to the drive.

It is the summation of Pipe Position and Generator Position.

ReferencePosition = Pipe Position + Generator Position

Zero Offset

This adjusts the coordinate systemClosed The reference system in which a coordinate or path is described. so the Actual Position reports correct values after homing or using MLAxisWritePos.

Axis Block Initialization

A call to the MLAxisInit function block is required to implement motion for the axis.

  • All positions and offsets are set to zero.
  • The Axis Block motion generator is initialized with the proper ranges.
  • Values are aligned: ReferencePosition = Pipe Position + Generator Position.

Axis Connection to a Pipe

A call to the MLCNVConnect function block is required to get motion generated in the pipe to the Axis.

  • Pipe Offset calculation is: Pipe Offset = Pipe Position – Reference Position.
  • Values are aligned: ReferencePosition = Pipe Position + Generator Position.

Change Axis Position Functions

Function

Description

MLAxisAbs

Performs a move to an absolute position.

MLAxisAdd

A selected Axis performs a move for a specified distance relative to the endpoint of the previous move.

MLAxisMoveVel

Jog at the specified speedClosed Speed is the absolute value of the velocity without direction..

MLAxisReAlign

Realigns the actual position with the reference position by moving the axis by the specified delta position.

MLAxisRel

A selected Axis performs a move for a specified distance relative to the current position.

MLAxisStop

Stop with the specified deceleration.
This does NOT remove the input source, but to stop the drive from continuing to move.

MLAxisWritePipPos

Forces the pipe position internal value.


  • This function works only when no pipe is connected.

MLAxisWritePos

Sets a new value to an axis’ current location.

MLCNVConnect

Connects a converter Pipe Block to the specified axis.

MLCNVDisconnect

Disconnect a converter Pipe Block from its associated axis.

Pipe

Starts calculating Pipe data.

If the convertor block is connected to the axis it will reconnect the convertor and start updating the pipe position.

Pipe

Stops sending Pipe data to the Axis Block Pipe Position and disconnects the convertor output from the axis.

Homing

Homing is the process of moving the motorClosed An actuator focused to a movement, converting electrical energy in a force or torque. to a known physical reference point on the machineClosed The complete assembly of all connected parts or devices, of which at least one is movable..

Monitor an Axis

These are the function blocks to monitor the performance and status of an axis.

Function

Description

MLAxisCmdPos

Returns the reference position of the axis.

MLAxisGenIsRdy

Verifies if an axis is ready.

MLAxisReadActPos

Returns the actual position of the axis.

MLAxisReadGenStatus

Returns the status of the internal generator of the axis.

MLAxisStatus

Returns the status of the axis.

Multi-Axis Operation

For multi-axis applications, automatic operation requires both:

To start up the Pipe Network, these two function calls must be executed in an application programClosed The act of performing a sequence of instructions or commands.:

PipeNetwork(MLPN_ACTIVATE):
PipeNetwork(MLPN_CONNECT);

Multi-axis synchronized motion is accomplished using a motion blockClosed Data set with all the position control parameters which are required for a motion task. associated with one of these input Pipe Blocks:

Realign Positions

A call to the MLAxisReAlign function block is used to realign the axis after an error occurs

  • Motion must come to a stop first.
  • The MLAxisReAlign is executed.

    You must set the movement of this block to MLAxisReadActPos - MLAxisCmdPos.
  • The target position must be reached before any additional motion can occur.
    It can be checked by using the MLAxisReAlgnRdy function block.

Set Zero Axis

A call to the MLAxisWritePos function block is used to set a position offset at the Axis when the Pipe Network is not yet connected.

  • Pipe Position and Pipe Offset are set to zero.
  • Generator Position is set to equal to Zero Position.

    Zero Position is defined in MLAxisWritePos function block.
  • Then ReferencePosition = Pipe Position + Generator Position.

Single-Axis Operation

This includes motion done on an individual axis block: jogging, absolute moveClosed A positioning movement referenced to a fixed original position. Example: If a stage is positioned at +500 mm, an absolute move to +300 mm would result in a move of 200 mm towards the origin (in the negative direction)., or incremental movesClosed Positioning mode in which moves are referenced from the previously held position..

  • If these are single-axis based, then motion is executed with the MLAxisMoveVel, MLAxisAbs, and MLAxisRel FBs.
    • These motions are typically done during machine setup or adjustment and are often referred to as manual mode.
    • For these operations, the Pipe Network does not need to be connected to the axis.

Units

User Units (abbreviated UU) are dimensions used in the application code to define axis position or distance for an axis.

The User Units per Revolution field is used to set how many of these custom units are associated with one revolution of the motor.

Examples

User Units

User Units per Revolution Value

Notes

Degrees

360.0

 

Gradians

400.0

 

Inches

15.7079632679489662

This equals pi*5.

This could represent the circumference of a 5 inch diameter drum.

Radians

3.14159265358979324

 

KASClosed Kollmorgen Automation Suite standard units for velocityClosed For a group of axes this means: In ACS the velocities of the different axes. In MCS and PCS it provides the velocity of the TCP and accelerationClosed A change in velocity over time. Because velocity is a vector, it can change in two ways: a change in magnitude and/or a change in direction. In one dimension, acceleration is the rate at which something speeds up or slows down. However, more generally, acceleration is a vector quantity expressing the change with time of the velocity both in magnitude and in direction. See these Wikipedia articles for more information: http://en.wikipedia.org/wiki/Velocity http://en.wikipedia.org/wiki/Euclidean_vector http://en.wikipedia.org/wiki/Rate_(mathematics) are UU/sec and UU/sec2.

View Axis Block Position Functions

Function

Description

MLAxisCmdPos

Returns the reference position of the axis.

MLAxisFBackPos

Returns the feedback position of the axis.

MLAxisGenPos

Returns the generator position of the axis.

MLAxisPipePos

Returns the pipe position of the axis.

MLAxisReadActPos

Returns the actual position of the axis.

Concept Link IconSee Also